Signaling and control protocols are used for establishing and managing communication sessions between devices. In particular, these signaling and control protocols provide several functions for the setup, modification and termination of the communication sessions. Some signaling and control protocols are based on an HTTP-like request and response transaction model. Each transaction consists of a request that invokes a particular function and at least one response. When no response is received for the request within a particular period of time, the transaction is considered to have experienced a timeout.
One such signaling and control protocol, the Session Initiation Protocol (SIP), is an application layer signaling and control protocol for establishing and managing delivery of Internet Protocol (IP)-based telephony services in a packet-based network. SIP can be used to support a variety of telecommunication services such as audio or video conferencing, text messaging, interactive gaming and call forwarding. The SIP protocol is described in Request for Comment (RFC) 3261, published in 2002, and prepared by the Internet Engineering Task Force (IETF). SIP is compatible with other protocols to build a multimedia architecture that can provide complete IP-based telephony services to end users. For example, SIP can operate over any transport layer protocol, such as User Datagram Protocol (UDP) or Transmission Control Protocol (TCP).